/**
 * org.vz.product.collectMaintain.service
 * @since : jdk 1.8
 */
package org.vz.product.collect.maintain.service;


import java.util.List;
import java.util.Map;

import org.beetl.sql.core.engine.PageQuery;
import org.vz.product.collect.maintain.domain.Acquisition;
import org.vz.product.collect.maintain.domain.AcquisitionQueue;
import org.vz.product.collect.maintain.domain.TransLog;
import org.vz.product.collect.maintain.domain.TransMapRows;
import org.vz.product.collect.maintain.domain.TransRecordBlack;
import org.vz.product.collect.maintain.domain.WorkStatistics;
import org.vz.product.collect.maintain.domain.entity.StatResult;
import org.vz.product.collect.maintain.domain.entity.Transformation;
import org.vz.product.collect.maintain.util.PageUtil;

/**
 * @author      lanxuyu
 * @CreateTime  2017年09月07日 16:11:39
 * @version     1.0.0
 * @description 
 */
public interface TransLogService {

	/**
	 * @description  批次信息列表
	 * @author       lanxuyu
	 * @CreateTime   2017年9月7日 下午4:25:28
	 * @param query
	 */
public PageQuery<TransLog> batchList(PageQuery<TransLog> query);


	/**
	 * @description  批次详情列表
	 * @author       lanxuyu
	 * @CreateTime   2017年9月8日 下午2:51:11
	 * @param pageNo
	 * @param pageSize
	 * @param idBatchTarget
	 * @param targetTableName
	 * @param endTime 
	 * @param startTime 
	 */
	public PageUtil getBatchDetail(Integer pageNo, Integer pageSize,List<TransMapRows> tmrs,String startTime,String endTime);
	/**
	 * 
	 * @description  分页查询
	 * @author       lanxuyu
	 * @param queryname 
	 * @CreateTime   2017年8月10日 下午4:28:21
	 * @param index
	 * @param size
	 * @return
	 */
	public Map<String, Object> pageList(PageQuery<Acquisition> query, String queryname);
	public Map<String, Object> statisticsDetail(PageQuery<Acquisition> query);
	/**
	 * @description  
	 * @author       lanxuyu
	 * @param endTime 
	 * @param startTime 
	 * @CreateTime   2017年9月18日 上午10:58:29
	 * @param startTime
	 * @param endTime
	 * @return
	 */
	public StatResult<Map<String, Object>> statistics(String startTime, String endTime);


	/**
	 * @description  
	 * @author       lanxuyu
	 * @CreateTime   2017年10月16日 下午4:54:03
	 * @param acquisition
	 * @param query 
	 * @param endTime 
	 * @param startTime 
	 * @return
	 */
	public Map<String, Object> getMsgSuccess(Acquisition acquisition, PageQuery<AcquisitionQueue> query, String startTime, String endTime);


	/**
	 * @description  
	 * @author       lanxuyu
	 * @CreateTime   2017年10月16日 下午4:54:55
	 * @param transRecordBlack
	 * @param query 
	 * @param endTime 
	 * @param startTime 
	 * @return
	 */
	public Map<String, Object> getMsgFailed(TransRecordBlack transRecordBlack, PageQuery<TransRecordBlack> query, String startTime, String endTime);


	/**
	 * @description  
	 * @author       lanxuyu
	 * @CreateTime   2017年10月16日 下午4:56:16
	 * @param transMapRows
	 * @param query 
	 * @param endTime 
	 * @param startTime 
	 * @return
	 */
	public Map<String, Object> getPlatform(TransMapRows transMapRows, PageQuery<TransMapRows> query, String startTime, String endTime);


	/**
	 * @description  
	 * @author       lanxuyu
	 * @CreateTime   2017年11月7日 上午10:52:00
	 * @param query
	 * @param startTime
	 * @param endTime
	 * @return
	 */
	public StatResult<Map<String,Object>> allPlatform(PageQuery<TransMapRows> query, String startTime, String endTime);


	/**
	 * @description  
	 * @author       lanxuyu
	 * @CreateTime   2017年11月7日 上午11:14:01
	 * @param startTime
	 * @param endTime
	 * @return
	 */
	public StatResult<List<TransRecordBlack>> allMsgFailed(String startTime,
			String endTime);


	/**
	 * @description  
	 * @author       lanxuyu
	 * @CreateTime   2017年11月7日 下午1:02:03
	 * @param clasify
	 * @return
	 */
	public StatResult<Map<String, Object>> getWorkingTrans();


	/**
	 * @description  TODO
	 * @author       lanxuyu
	 * @param endTime 
	 * @param startTime 
	 * @CreateTime   2017年11月13日 下午5:20:44
	 * @return
	 */
	public StatResult<List<WorkStatistics>> statisticsAllDetail(String startTime, String endTime);


	/**
	 * @description  TODO
	 * @author       lanxuyu
	 * @CreateTime   2017年11月14日 下午5:44:29
	 * @return
	 */
	public StatResult<Map<String, Object>> getWaitingTrans();
}
